import java.util.Arrays;

public class test {

    //5 给定一个大小为 n 的数组，找到其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。
    //你可以假设数组是非空的，并且给定的数组总是存在多数元素。
    public static int da(int[] array,int n){
        int a=1;
        for (int i = 0; i < array.length; i++) {
            for (int j = i+1; j < array.length; j++) {
                if(array[i]==array[j]){
                    a++;
                }
            }
            if(a>n/2){
                return array[i];
            }
        }
        return 99999999;
    }

    public static void main5(String[] args) {
        int[] array={1,2,3,1,1};
        int i=da(array, array.length);
        System.out.println(i);
    }

    //4 给定一个非空整数数组，除了某个元素只出现一次以外，其余每个元素均出现两次。找出那个只出现了一次的元素。
    public static int one(int[] array){
        for (int i = 0; i < array.length; i++) {
            int a=0;
            for (int j = i+1; j < array.length; j++) {
                if(array[i]==array[j]){
                    a++;
                }
            }
            if(a==0){
                return array[i];
            }
        }
        return -1;
    }

    public static void main4(String[] args) {
        int[] array={1,2,3,1,2};
        int q=one(array);
        System.out.println(q);
    }

    //3 给定一个整数数组 nums 和一个整数目标值 target，请你在该数组中找出 和为目标值 target 的那 两个 整数，并返回它们的数组下标。
    public static String sum(int[] array,int target){//也可以定义一个数组，返回数组
        for (int i = 0; i < array.length; i++) {
            for (int j = i+1; j <array.length ; j++) {
                if(array[i]+array[j]==target){
                    return "["+i+","+j+"]";
                }
            }
        }
        return "["+"]";
    }


    public static void main3(String[] args) {
        int[] array={2,4,6,8,3};
        int target=7;
        String su=sum(array,target);
        System.out.println(su);
    }

    //2 调整数组顺序使得奇数位于偶数之前。调整之后，不关心大小顺序。
    public static void ji(int[] array){
        boolean flg=false;
        for (int i = 0; i < array.length-1 ; i++) {
            for (int j = 0; j < array.length-1-i ; j++) {
                if(array[j]%2==0&&array[j+1]%2!=0){
                    int a=array[j];
                    array[j]=array[j+1];
                    array[j+1]=a;
                    flg=true;
                }
            }
            if(flg==false) {
                break;
            }
        }
    }

    public static void main2(String[] args) {
        int[] array={2,4,6,8,3};
        ji(array);
        System.out.println(Arrays.toString(array));
    }
}
